home *** CD-ROM | disk | FTP | other *** search
/ Fritz: All Fritz / All Fritz.zip / All Fritz / FILES / UTILFILE / NJRAMD.LZH / BENCH next >
Text File  |  1987-06-13  |  5KB  |  111 lines

  1.  
  2.  
  3. Big apologies to everyone who wanted this information, but had to
  4. wait.  I've been too busy, lately.
  5.  
  6. I benchmarked NJRAMD, Ray Duncan's EMS DISK, IBM DOS 3.10's VDISK,
  7. and my Seagate ST-238/Adaptek 2070A RLL hard drive subsystem with
  8. eachother.
  9.  
  10. The first important point is how much DOS memory each of the drives
  11. take:
  12.  
  13.       Seagate       0 bytes
  14.       NJRAMD      705 bytes
  15.       EMSDISK     836 bytes
  16.       VDISK.SYS  1048 bytes
  17.  
  18. Of course, the Seagate doesn't require any DOS memory, as  all of it's
  19. control routines are stored in the ROM on the controller card.
  20.  
  21. NJRAMD takes slightly less memory than EMSDISK because I've used some
  22. extremely efficient programming methods.  Just the bare essentials
  23. are left in memory when NJRAMD loads.  It seems that EMSDISK leaves
  24. around a lot of "work space" and "temporary" variables, that don't
  25. even need to be there.  Much of NJRAMD's code is shorter, also.
  26.  
  27. VDISK.SYS takes a great deal more memory than NJRAMD because VDISK is
  28. a much more powerful program, in a way.  It provides code for a RAM
  29. Disk for either regular DOS RAM, or for the Extended memory that AT
  30. systems have.  NJRAMD only provides a RAM Disk for the EMS and EEMS
  31. memory systems.
  32.  
  33. The other important consideration is speed.  NJRAMD proved faster
  34. than either of the RAM Drives, and certainly faster than my hard disk
  35. drive.  (The times for the hard disk drive are included only for a
  36. reference.)
  37.  
  38. My system runs a 4.77 MHz NEC V-20 CPU.  I wrote a simple program
  39. using SYMDEB, Microsoft's Symbolic Debugger, to test the drives.  I
  40. ran the program three times, and took an average of the three runs.
  41.  
  42. The first version of the program is simply a loop that executes 10000
  43. times.  In each iteration, the program reads one 512-byte sector from
  44. the drive.  The program always reads the same sector.  All in all,
  45. 5,120,000 bytes of data were transferred during the test. These are
  46. the results:
  47.  
  48.        Program          Try 1    Try 2     Try 3     Average
  49.  
  50.       NJRAMD            36.01    36.03     36.02     (36.02)
  51.       NJRAMD, /S option 35.60    35.71     35.63     (35.65)
  52.       EMSDISK           36.53    36.73     36.45     (36.55)
  53.       VDISK.SYS       1:01.46  1:01.38   1:01.42   (1:01.42)
  54.       Hard Drive      2:47.30  2:47.45   2:47.53   (2:47.43)
  55.  
  56.  
  57. NJRAMD and EMSDISK ran neck-and-neck for this first test;  NJRAMD was
  58. only negligably faster.  My hard drive turned out a reasonable time,
  59. considering that it's not buffered.
  60.  
  61. It seems strange to me that VDISK.SYS was so much slower than the
  62. other programs, however.  I checked my tests several times, and they
  63. seem to be correct.  VDISK.SYS seems to execute with very much
  64. overhead.  I would have thought that VDISK.SYS would've been *faster*
  65. than the EMS drives, since VDISK doesn't have to deal with the
  66. overhead of the EMS manager, as the information is right in standard
  67. DOS memory, and doesn't need to be bank-switched into place.
  68.  
  69. The second test is also a loop that executes 10000 times.  Each
  70. iteration, however, read eight sectors, starting at the seventh
  71. logical sector of the drive.  In total, 40.960 million bytes of data
  72. were transferred.  These are the results:
  73.  
  74.  
  75.        Program          Try 1    Try 2     Try 3     Average
  76.  
  77.       NJRAMD          1:46.75  1:46.64   1:46.68    (1:46.69)
  78.       NJRAMD /S       1:45.80  1:45.73   1:45.89    (1:45.80)
  79.       EMSDISK         2:11.07  2:11.30   2:11.12    (2:11.19)
  80.       VDISK.SYS       1:17.78  1:17.70   1:17.60    (1:17.69)
  81.       Hard Drive      5:34.10  5:33.96   5:34.12    (5:34.06)
  82.  
  83.  
  84. In this test, NJRAMD's special optimizations are shown.  Since DOS,
  85. and application programs under DOS, often read or write several
  86. sectors in a row, I thought it would be beneficial if NJRAMD had
  87. logic to account for this.  As the results show, the idea payed off.
  88. The program became significantly faster than EMSDISK.
  89.  
  90. VDISK.SYS had only slightly slower times, which, again, suggests that
  91. the program has some sort of large speed overhead, wasting time in
  92. its execution.
  93.  
  94. My Hard Drive again performed as expected.  The mechanical device
  95. read the data at approximately 122000 bytes per second, which is
  96. rather good, considering the limit placed on DMA transfers in my
  97. relatively slow system.
  98.  
  99. NJRAMD is avaialable in the file NJRAMD.ARC, here in the IBM Software
  100. Forum.  If you'd like a copy of the program on a special
  101. pre-registered disk, send $10 to
  102.  
  103.  
  104.      Mike Blaszczak
  105.      112 Verlinden Drive
  106.      Monroeville,  PA  15146-2041
  107.  
  108.  
  109. 13 May 1987
  110.  
  111.